1. Field of the Invention
Devices and methods consistent with what is disclosed herein relate to a terminal apparatus and a method of controlling the terminal apparatus, and more specifically, to a terminal apparatus configured to forward a received interest packet to surrounding terminal apparatuses based on a priority order of contents, and a method of communicating with the terminal apparatus.
2. Description of the Related Art
A contents centric network (CCN) is a wireless network which performs routing by using identifiers of contents differently from a conventional wireless network which performs communication by using IP addresses. Herein, each node of a CCN (referred to hereafter as a “CCN node”) includes a contents store (referred to hereafter as “CS”), a pending interest table (referred to hereafter as “PIT”), and a forwarding information base (referred to hereafter as “FIB”), and performs transmitting contents data by using the above stored data.
By referring to FIG. 1, the following will explain in detail the concept of transmitting contents including contents corresponding to a CCN node that transmits an interest packet, which is a message requesting specific contents, by using the CS, PIT and FIB.
First, the FIB is a unit which manages a routing path of the interest packet.
In CCN illustrated in FIG. 1 view (a), when specific contents are registered on a server of CCN, the server broadcasts a message including an identifier of contents that are newly registered. The broadcasted message is received toward CCN node A near to the server, and CCN node A matches an identifier of a communication port receiving the message with the identifier of contents included in the message, stores the matched data in its own FIB, and broadcasts the message through every communication port. The operations of storing information and transmitting a message by using the FIB are uniformly performed in every CCN node included in the CCN, and thus, every CCN node matches and stores the identifier of contents registered and an identifier of a communication port receiving the message on its own FIB.
For convenient explanation, the following assumes that a content A is registered on the server, and every CCN node matches and stores an identifier of content A and an identifier of a communication port corresponding to content A in its FIB through the above described processes. When client 1 is trying to receive content A, client 1 generates an interest packet including the identifier of content A and transmits the interest packet to CCN node H, which corresponds to the CCN node nearest to client 1. When CCN node H confirms that there are no contents having the same identifier as that of content A among the stored contents in its own CS, it matches and stores the identifier of content A with a path where the interest packet is received (i.e., an identifier of a communication port receiving the interest packet) in its PIT. Further, CCN node H confirms the FIB, selects a communication port which will transmit the corresponding interest packet (i.e., select the communication port matched and stored with the identifier of content A included in the interest packet within the FIB), outputs the interest packet through the selected communication port, and deletes information regarding the identifier of content A and the identifier of the communication port which are matched and stored together within the FIB. The outputted interest packet is received at CCN node D. Similar operations are uniformly performed at CCN node D, CCN node B, and CCN node A, as illustrated in FIG. 1 view (b), and thus, the interest packet is finally delivered to the server.
The server confirms that specific CCN node A requests content A through the interest packet and transmits content A to CCN node A, which was the CCN node to finally transmit the interest packet. CCN node A, receiving content A, confirms that content A is not presently stored in its own CS, and stores content A in the CS of CCN node A. Further, CCN node A confirms whether the identifier of content A is stored in the PIT or not. Already described, because the identifier of content A and the identifier of the communication port receiving the interest packet including content A are matched and stored in the PIT of CCN node A, CCN node A selects the communication port which will transmit content A through the PIT (the communication port matched and stored with content A), and transmits content A through the selected communication port. Similar operations are uniformly performed at CCN node B, CCN node D, and CCN node H, as illustrated in FIG. 1 view (c), and thus, content A is stored at CCN node A, CCN node B, CCN node D, and CCN node H, as illustrated in FIG. 1 view (d). Client 1 finally receives content A from CCN node H.
After the above operations are completed, when client 2 is trying to receive content A, client 2 also transmits the interest packet including the identifier of content A to CCN node D through CCN node I, as illustrated in FIG. 1 view (e).
CCN node D has previously stored content A in its own CS, through the above-described processes. Thus, CCN node D confirms that its CS stores the contents having the same identifier as that of the requested contents (content A) included in the interest packet, transmits content A to CCN node I transmitting the interest packet through the communication port connected with CCN node I, as illustrated in FIG. 1 view (f), and CCN node I transmits content A to client 2 after storing content A in its own CS. Therefore, client 2 may receive contents more efficiently because contents may be transmitted from the surrounding CCN nodes, not the server.
With the above described CCN, a user may be provided with requested contents through a nearby CCN node storing the contents, regardless of the initial position of the contents' owner. Therefore, the load of the server initially distributing contents may be reduced, thereby reducing amount of network use by shortening average transmission paths, and enhancing the speed of receiving desired contents at a user. Further, receiving contents can be performed more quickly and stably because contents can be requested and received through multiple paths.
The purpose of CCN is to transmit popular contents having a high requesting frequency more efficiently and stably. However, a method of requesting contents by considering priority order such as a requesting frequency of contents is not specifically known.